package com.liu.user.controller;


import com.liu.common.controller.CommonController;
import com.liu.common.entity.R;
import com.liu.user.entity.dto.UserOperateInfoDTO;
import com.liu.user.entity.qo.UserOperateQO;
import com.liu.user.service.IUserOperateInfoService;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import javax.annotation.Resource;

/**
 * <p>
 * 用户操作信息表 前端控制器
 * </p>
 *
 * @author LiuChengLong
 * @since 2023-03-12
 */
@RestController
@RequestMapping("/gameOperate/userOperateInfo")
public class UserOperateInfoController extends CommonController {

    @Resource
    private IUserOperateInfoService userOperateInfoService;

    /**
     * 用户操作
     * @param userOperateQO 操作信息
     * @return 操作信息
     */
    @PostMapping("/userOperateInfo")
    public R<UserOperateInfoDTO> userOperateInfo(@RequestBody UserOperateQO userOperateQO){
        Integer userId = this.getUserId();
        if (userOperateQO.getUserId().equals(userId)){
            // 获取操作结果
            UserOperateInfoDTO userOperateInfoDTO = userOperateInfoService.userOperateInfo(userOperateQO);
            // 获取随机时间NPC名称
            userOperateInfoService.getNpcOperate(userId, userOperateInfoDTO);
            return R.success(userOperateInfoDTO);
        }else {
            return R.failed();
        }
    }

}

